【PHP】(object)array()と(array)$objectとは?オブジェクトを連想配列に、連想配列をオブジェクトに変換する方法 您所在的位置:网站首页 php array_unique object 【PHP】(object)array()と(array)$objectとは?オブジェクトを連想配列に、連想配列をオブジェクトに変換する方法

【PHP】(object)array()と(array)$objectとは?オブジェクトを連想配列に、連想配列をオブジェクトに変換する方法

2023-05-12 06:40| 来源: 网络整理| 查看: 265

PHPでオブジェクトから配列に変換、および、配列からオブジェクトに変換する方法について。

オブジェクトを配列に変換する方法(array)配列をオブジェクトに変換する方法 (object)補足まとめオブジェクトを配列に変換する方法(array)

(array) を使うとオブジェクトを配列に変換することができる。

例えば、通常はクラスの中で定義したプロパティにアクセスするためには「->」を使う必要がある。

配列化をすれば[‘キー名’]で値を抜き出すことができる。

配列化した時の注意点は、public $変数名 = [ ] の場合に、変数名がキーとなり 変数名 => [ ] となること。

実例class Test { public $arr = [ 'key1' => 'val1' , 'key2' => 'val2' , 'key3' => 'val3' , ]; } $obj = new Test; //インスタンス(オブジェクト)を生成 var_dump((array)$obj);#出力結果 array(1) { ["arr"]=> array(3) { ["key1"]=> string(4) "val1" ["key2"]=> string(4) "val2" ["key3"]=> string(4) "val3" } }

オブジェクトが配列になっていることがわかる。public $arrのkey2の値にアクセスしたい場合は、(array)$obj[‘arr’][‘key1’]で取得できる。

class Test { public $arr = [ 'key1' => 'val1' , 'key2' => 'val2' , 'key3' => 'val3' , ]; } $obj = new Test; $arr2 = (array)$obj; echo $arr2['arr']['key1'];#出力結果 val1配列をオブジェクトに変換する方法 (object)

(object)配列 とすることで、配列をオブジェクトに変換できる。

$arr = [ 'key1' => 'val1' , 'key2' => 'val2' , 'key3' => 'val3' , ]; var_dump((object)$arr);#出力結果 object(stdClass)#1 (3) { ["key1"]=> string(4) "val1" ["key2"]=> string(4) "val2" ["key3"]=> string(4) "val3" }

オブジェクトになったので、key1の値を取得したい場合は $arr[‘key1’] ではなく「->」でプロパティとして指定する必要がある。

$arr = [ 'key1' => 'val1' , 'key2' => 'val2' , 'key3' => 'val3' , ]; $obj = (object)$arr; echo $obj->key1;#出力結果 val1補足

なお、配列に対して(array)を、オブジェクトに対して(object)を指定しても、変化は起こらず元のままとなる。

まとめ

PHPの中で変数の冒頭に、(array)や(object)があったら、その形に変換しますよという意味になる。

必要に応じて使いまわせると便利。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有